package xj.graph2d;

import java.awt.geom.Rectangle2D;
import java.io.IOException;

import javax.swing.filechooser.FileFilter;

public interface Encoder {

  public String getName();

  public String getFileExtension();

  public String getFileDescription();

  public FileFilter getFileFilter();

  public void setWaterMark(boolean wm);

  public void setName(String name);

  public void setView(View view);

  public boolean isUseAntialias();

  public void setUseAntialias(boolean useAntialias);

  public boolean isFractionalMetrics();

  public void setFractionalMetrics(boolean fractionalMetrics);

  public boolean isTransparent();

  public void setTransparent(boolean transparent);

  public void encode(String filename) throws IOException;

  public void encode(String filename, Rectangle2D r) throws IOException;

}
